import Vue from 'vue'

// 重置浏览器样式
import 'normalize.css/normalize.css' // A modern alternative to CSS resets

// 导入饿了莫
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
if (process.env.NODE_ENV === 'development') {
  // 只要开发环境引入element样式
  require('element-ui/lib/theme-chalk/index.css')
}
// import locale from 'element-ui/lib/locale/lang/en' // lang i18n

// 全局样式
import '@/styles/index.scss' // global css

// 根组件
import App from './App'
// 导入 buex
import store from './store'

// 导入路由
import router from './router'

// 导入图标
import '@/icons' // icon
// 添加守卫
import '@/permission' // permission control

// 自定义指令注册
import * as directives from '@/directives/index.js'
// 注册多个全局指令 object.keys().foreach()
Object.keys(directives).forEach(key => {
  Vue.directive(key, directives[key])
})

// 导入功能权限点方法
import ckp from '@/utils/minxin'
/** use
 *  1. 调用install 方法
 */

// 注册通用工具栏
import globComponents from './components'
Vue.use(globComponents)

// 导入echarts插件
import echartsPlus from '@/utils/echarts.js'
// 注册echarts
Vue.use(echartsPlus)

// 国语言
import i18n from '@/lang/index.js'

// 饿了莫组件
Vue.use(ElementUI, {
  // 传入i18n 实例 ,翻译饿了莫组件多语言
  i18n: (k, v) => i18n.t(k, v)
})

Vue.config.productionTip = false

Vue.mixin(ckp)

new Vue({
  el: '#app',
  i18n, // 多语言
  router, // 挂在 路由 实例
  store, // 挂在 vuex 实例
  render: h => h(App)
})
